1. Field of the Invention
Embodiments of the invention relate to a disturbance compensation mechanism and method adapted for use with a hard disk drive (HDD). More particularly, embodiments of the invention relate to methods of calculating a repeatable disturbance in the frequency domain, and calculating a repeatable runout (RRO) compensation value using the repeatable disturbance calculating method.
This application claims the benefit of Korean Patent Application No. 10-2005-0057140 filed on Jun. 29, 2005, the subject matter of which is incorporated herein in its entirety by reference.
2. Description of the Related Art
The storage density of contemporary hard disk drives (HDDs) has greatly increased due to the development of improved magneto-resistive (MR) head technology. For example, current product proposals include a device capable of storing 80 GBytes of data per disk and having a track density of 93,000 tracks per inch (TPI) and a track width of 0.27 μm. Further, it is expected that new product developments will allow implementation of a device capable of storing 120 GByte of data per disk.
Within the context of these products, a technique for precisely controlling head position is required so that the head may precisely write or read data to or from such fine tracks. The head position is controlled in an HDD so that the head can precisely follow the center of a target track. However, no matter how well a controller controls head position, some degree of control error due to various types of disturbance are bound to happen. Disturbances in the context of an HDD may be classified into repeatable disturbances (e.g., the so-called repeatable runout (RRO) disturbance generated by disk eccentricities) and non-repeatable disturbances (e.g., the so-called non-repeatable runout (NRRO) disturbances generated by disk flutter caused, for example, by an external impact to the HDD). In this context, the term “repeatable” means the magnitude and phase of a runout vary periodically. That is, runout occurs periodically and the phase of the runout is synchronized with a servo sector of the disk.
RRO occurs due to deviations of a disk center from a defined center of disk rotation. RRO becomes especially critical when an offline servo writing technique is used in the HDD. For example, when disks of an HDD having a data density of 93,000 TPI is assembled using an offline servo writing method, an RRO error of greater than 200 tracks may be expected. Because such a gross RRO error leads to extreme deterioration in the performance of the HDD, it is necessary to compensate for the RRO error.
FIG. 1 is a block diagram of a conventional track following device. In FIG. 1, uc denotes a control output of a controller 102, y denotes an output of a plant 104, for example, a position of a head, d denotes a disturbance signal (d=drro+dnrro), and PES denotes a position error signal input to the controller 102.
Since a reference input is zero (0) in an ideal track following state (i.e., mode), the position error signal PES is essentially generated by disturbance signal d. In the track following device of FIG. 1, assuming that transfer functions of both controller 102 and plant 104 are C(z) and P(z), respectively, the position error signal PES at an nth servo sample, (PES(n)) is given by,PES(n)=S(z)d(n)  (1)where d(n) denotes the magnitude of disturbance at the nth servo sample.
From Equation 1, repeatable disturbance drro(n) is given by,
                                                                                          d                  rro                                ⁡                                  (                  n                  )                                            =                                                                    S                                          -                      1                                                        ⁡                                      (                    z                    )                                                  ⁢                                  RPES                  ⁡                                      (                    n                    )                                                                                                                          =                              (                                  1                  +                                                            P                      ⁡                                              (                        z                        )                                                              ⁢                                          C                      ⁡                                              (                        z                        )                                                              ⁢                                          RPES                      ⁡                                              (                        n                        )                                                                                                                                                                    =                              (                                                      RPES                    ⁡                                          (                      n                      )                                                        +                                                            P                      ⁡                                              (                        z                        )                                                              ⁢                                          C                      ⁡                                              (                        z                        )                                                              ⁢                                          RPES                      ⁡                                              (                        n                        )                                                                                            )                                                                                        =                              (                                                      RPES                    ⁡                                          (                      n                      )                                                        +                                                            P                      ⁡                                              (                        z                        )                                                              ⁢                                          u                      ⁡                                              (                        n                        )                                                                                            )                                                                        (        2        )            where S denotes a sensitivity function for both controller 102 and plant 104 of the track following device of FIG. 1, and RPES denotes the PES generated by repeatable disturbance drro.
Referring to Equation 2, it can be seen that the repeatable disturbance drro(n) is determined by RPES(n), P(z)b and C(z). RPES can be obtained by sampling the position error signal PES in the tracking following mode, and transfer functions P(z) and C(z) can be obtained using previously defined values. In calculating the repeatable disturbance drro(n) using Equation 2, the RPES(n) should be measured precisely since both transfer functions P(z) and C(z) are fixed values. That is, it is necessary to measure the position error signal PES in every revolution of the disk to eliminate the effect of NRRO and to average the position error signal PES through several revolutions of the disk.
After a RRO compensation value (Rdrro) adapted to compensate for RRO has been obtained using the repeatable disturbance drro, Rdrro is stored in an RRO lookup table 106 of FIG. 1. In one more specific example, Rdrro is obtained during a burn-in test for the constituent HDD and then stored on the disk. During an initial operation of the HDD, Rdrro is read from the disk and then stored in lookup table 106.
FIG. 2 is a flow chart illustrating a conventional method of calculating an RRO compensation value (Rdrro).
Referring to FIG. 2, a track following operation is performed so that the head follows a target track (S202). A position error signal PES is then sampled while the head follows the target track (S204). The position error signal PES is sampled at time intervals corresponding to servo samples. While the disk rotates a predetermined number of revolutions, the position error signal PES is detected and an average position error signal PES, i.e., PESAVG, is obtained.
Then, repeatable disturbance drro is calculated using Equation 2 (S206).
The repeatable disturbance drro is again calculated while the disk rotates through a predetermined number of revolutions, and the previous repeatable disturbance drro is corrected using the later calculated repeatable disturbance drro (S208).
Assuming that the first repeatable disturbance drro obtained in operation S206 is rcd0, rcd0(i) at an ith servo sample is given by,rcdo(i)=drro(0).0≦i≦serv_sector_max]  (3)where “servo_sector_max” is the number of servo sectors of the corresponding track.
The error-corrected repeatable disturbance rcdm+1(i), obtained in operation S208 by an m+1th update step, is given by Equation 4 as below,rcdm+1(i)=rcdk(m)+λdrro(i).0≦i≦serv_sector_max  (4)where (m) denotes the order of update operations (0≦m).
Then, returning to FIG. 2, RRO compensation value Rdrro is obtained (S210).
However, the conventional RRO calculating method, as illustrated in FIG. 2, has a problem in that it takes a relatively long time to obtain the position error signal PES and then calculate RRO. The disk should rotate at least two to four revolutions during the PES sampling operation (S204) to obtain an average PES for the target track. The disk should also rotate at least two to four revolutions during the error correcting operation (S208) to satisfactorily calculate the RRO.
Thus, it takes a relatively long time to obtain the average PES and calculate the RRO. The RRO compensation value Rdrro is obtained for each of disks, tracks, and sectors. To obtain repeatable disturbance drro for all of the tracks on a disk, the required time period per track will be multiplying by the great number of tracks. Thus, as the number of tracks increases in contemporary devices, the problem only increases. That is, the greater the density of a HDD, the longer a period of time is necessary to calculate the RRO compensation value is Rdrro. As a result, production throughput for the HDD suffers and manufacturing costs for the HDD rise.
Because Equation 2 above contains a multiplication function between a frequency domain value and a time domain value (e.g., a convolution function) a great deal of time is generally required to calculate Equation 2.
Further, the transfer function P(z) for plant 104 in Equation 2 is obtained using a modeling process, and thus a mismatch may occur between an actual plant and the modeled plant. Since there is a generally a range of such values among similarly manufactured HDDs, the transfer function P(z) for plant 104 will differ between supposedly identical HDDs.
Further, since the conventional RRO calculating method does not consider deviations in the transfer function P(z), it is difficult to obtain a precise RRO compensation value well tailored to individual HDDs.
U.S. Pat. Nos. 5,793,559 and 6,061,200, the subject matter of which is hereby incorporated by reference, disclose one method of calculating an RRO compensation value in relation to the transfer function P(Z) for each HDD. However, since these methods use a conventional operation, the calculation of RRO remains a lengthy process.